/*
mentrixmax.
Todos os direitos reservados
Nome do projeto : Teste
Nome do módulo  : DAO
Data de início  : 08/06/2013
Responsável(is) : Mateus Neto
Observações  : 
Contato : mentrixmax@gmail.com
*/
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MentrixmaxFormularios;
using Negocio;
using Entidades;
using ComunsTeste; 
using System.Windows.Forms;
using Menfram.Business.Interface;
using Menfram.Entity.Interface;
using MentrixmaxFormularios.FormsAbstratos;
namespace IU.ManterCaixa
{
    /// <summary>
    ///  classe de formulario referente a tabela: tbCaixa
    /// </summary>
    public partial class frmCaixa: frmCaixaInter
        {

		/// <summary>
		/// Construtor Padrão da Classe:frmCaixa
		/// </summary>
		public frmCaixa()
			{
				InitializeComponent();
			}

		#region atributos privados
		private Mentrixmax.Controles.CustomBoxControl txtData;
		private System.Windows.Forms.Label  lbData;

		private Mentrixmax.Controles.CustomBoxControl txtOperacao;
		private System.Windows.Forms.Label  lbOperacao;

		private Mentrixmax.Controles.CustomBoxControl txtValor;
		private System.Windows.Forms.Label  lbValor;

		private Mentrixmax.Controles.CustomBoxControl txtSequencialUsr;
		private System.Windows.Forms.Label  lbSequencialUsr;

		private Mentrixmax.Controles.CustomBoxControl txtSequencialVen;
		private System.Windows.Forms.Label  lbSequencialVen;

		private Mentrixmax.Controles.CustomBoxControl txtTipo;
		private System.Windows.Forms.Label  lbTipo;

		#endregion

		/// <summary>
		/// Metodo que inicializa o formulário para o VS 2005.
		/// Autor: Gerador NAT
		/// </summary>
		private void InitializeComponent(){
		 this.Text = " Manter  Caixa"; 
			lbData= new System.Windows.Forms.Label();
			lbData.AutoSize = true;
			lbData.Location = new System.Drawing.Point(21,14);
			lbData.Name ="lbData";
			lbData.Text = "*Data";
			pnCentral.Controls.Add(lbData);
			txtData= new Mentrixmax.Controles.CustomBoxControl();
			txtData.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtData.Location = new System.Drawing.Point(21,34);
			txtData.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtData.MaxLength =8;
			txtData.Name ="txtData";
			txtData.TabIndex = 0;
			pnCentral.Controls.Add(txtData);
			lbOperacao= new System.Windows.Forms.Label();
			lbOperacao.AutoSize = true;
			lbOperacao.Location = new System.Drawing.Point(171,14);
			lbOperacao.Name ="lbOperacao";
			lbOperacao.Text = "*Operacao";
			pnCentral.Controls.Add(lbOperacao);
			txtOperacao= new Mentrixmax.Controles.CustomBoxControl();
			txtOperacao.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtOperacao.Location = new System.Drawing.Point(171,34);
			txtOperacao.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtOperacao.MaxLength =4;
			txtOperacao.Name ="txtOperacao";
			txtOperacao.TabIndex = 1;
			pnCentral.Controls.Add(txtOperacao);
			lbValor= new System.Windows.Forms.Label();
			lbValor.AutoSize = true;
			lbValor.Location = new System.Drawing.Point(321,14);
			lbValor.Name ="lbValor";
			lbValor.Text = "*Valor";
			pnCentral.Controls.Add(lbValor);
			txtValor= new Mentrixmax.Controles.CustomBoxControl();
			txtValor.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtValor.Location = new System.Drawing.Point(321,34);
			txtValor.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtValor.MaxLength =9;
			txtValor.Name ="txtValor";
			txtValor.TabIndex = 2;
			pnCentral.Controls.Add(txtValor);
			lbSequencialUsr= new System.Windows.Forms.Label();
			lbSequencialUsr.AutoSize = true;
			lbSequencialUsr.Location = new System.Drawing.Point(21,59);
			lbSequencialUsr.Name ="lbSequencialUsr";
			lbSequencialUsr.Text = "*SequencialUsr";
			pnCentral.Controls.Add(lbSequencialUsr);
			txtSequencialUsr= new Mentrixmax.Controles.CustomBoxControl();
			txtSequencialUsr.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtSequencialUsr.Location = new System.Drawing.Point(21,79);
			txtSequencialUsr.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtSequencialUsr.MaxLength =4;
			txtSequencialUsr.Name ="txtSequencialUsr";
			txtSequencialUsr.TabIndex = 3;
			pnCentral.Controls.Add(txtSequencialUsr);
			lbSequencialVen= new System.Windows.Forms.Label();
			lbSequencialVen.AutoSize = true;
			lbSequencialVen.Location = new System.Drawing.Point(171,59);
			lbSequencialVen.Name ="lbSequencialVen";
			lbSequencialVen.Text = "*SequencialVen";
			pnCentral.Controls.Add(lbSequencialVen);
			txtSequencialVen= new Mentrixmax.Controles.CustomBoxControl();
			txtSequencialVen.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtSequencialVen.Location = new System.Drawing.Point(171,79);
			txtSequencialVen.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtSequencialVen.MaxLength =4;
			txtSequencialVen.Name ="txtSequencialVen";
			txtSequencialVen.TabIndex = 4;
			pnCentral.Controls.Add(txtSequencialVen);
			lbTipo= new System.Windows.Forms.Label();
			lbTipo.AutoSize = true;
			lbTipo.Location = new System.Drawing.Point(321,59);
			lbTipo.Name ="lbTipo";
			lbTipo.Text = "*Tipo";
			pnCentral.Controls.Add(lbTipo);
			txtTipo= new Mentrixmax.Controles.CustomBoxControl();
			txtTipo.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
			txtTipo.Location = new System.Drawing.Point(321,79);
			txtTipo.KeyUp += new System.Windows.Forms.KeyEventHandler(this.OnTxtCodigoKeyUp);
			txtTipo.MaxLength =4;
			txtTipo.Name ="txtTipo";
			txtTipo.TabIndex = 5;
			pnCentral.Controls.Add(txtTipo);

		}

		/// <summary>
		/// Método que configura o Negocio do UC Caixa
		/// Autor: Gerador NAT
		/// </summary>
		/// <returns>CaixaNegocio</returns>
		public override IBusiness<CaixaEntidade> getNegocio() 
		{ 
			return (IBusiness<CaixaEntidade>)CaixaNegocio.getInstance();
		}

		/// <summary>
		///  Copia os dados da Entidade para o fomumlário
		///  Autor: Gerador NAT
		/// </summary>
		/// <param name="to">IEntidade</param>
		public  override void getForm(IEntity to)
			{
				CaixaEntidade obj = (CaixaEntidade) to;
				if (obj == null)
				{
				 estadoInicial();
				}
				else
				{
			      obj.Sequencial=RegistroCorrente; 
			     if (obj.Data!= null)
			      {
					    txtData.Text = obj.Data.ToString();
			      }
			     if (obj.Operacao!= null)
			      {
					    txtOperacao.Text = obj.Operacao.ToString();
			      }
			     if (obj.Valor!= null)
			      {
					    txtValor.Text = obj.Valor.ToString();
			      }
			     if (obj.SequencialUsr!= null)
			      {
					    txtSequencialUsr.Text = obj.SequencialUsr.ToString();
			      }
			     if (obj.SequencialVen!= null)
			      {
					    txtSequencialVen.Text = obj.SequencialVen.ToString();
			      }
			     if (obj.Tipo!= null)
			      {
					    txtTipo.Text = obj.Tipo.ToString();
			      }
				  }
				}

		/// <summary>
		///  Limpa o Formulário
		/// Autor: Gerador NAT
		/// </summary>
		public override void limpaCampos()
			{
			 errorProvider.Clear();
			txtData.Clear();
			txtOperacao.Clear();
			txtValor.Clear();
			txtSequencialUsr.Clear();
			txtSequencialVen.Clear();
			txtTipo.Clear();
			}

		/// <summary>
		///  Copia os dados do Formulário para a Entidade
		/// Autor: Gerador NAT
		/// </summary>
		/// <returns>IEntidade</returns>
		public override IEntity getEntidade()
			{
			  CaixaEntidade obj =  new CaixaEntidade();
			   obj.Sequencial = RegistroCorrente;
			   if (txtData.Text != String.Empty)
				  {
					  obj.Data = Convert.ToDateTime(txtData.Text);
				  }
			   if (txtOperacao.Text != String.Empty)
				  {
					  obj.Operacao = Convert.ToInt32(txtOperacao.Text);
				  }
			   if (txtValor.Text != String.Empty)
				  {
					  obj.Valor = Convert.ToDecimal(txtValor.Text);
				  }
			   if (txtSequencialUsr.Text != String.Empty)
				  {
					  obj.SequencialUsr = Convert.ToInt32(txtSequencialUsr.Text);
				  }
			   if (txtSequencialVen.Text != String.Empty)
				  {
					  obj.SequencialVen = Convert.ToInt32(txtSequencialVen.Text);
				  }
			   if (txtTipo.Text != String.Empty)
				  {
					  obj.Tipo = Convert.ToInt32(txtTipo.Text);
				  }
			  return obj;
			}

		/// <summary> 
		/// Retorna a lista de campos obrigatorios
		/// Autor: Gerador NAT
		/// </summary>
		/// <returns>IList<System.Windows.Forms.Control></returns>
		public  override IList<System.Windows.Forms.Control> getListObtrigatorios()
			{
				IList<System.Windows.Forms.Control> lista = new List<System.Windows.Forms.Control>();
				lista.Add(txtData);
				lista.Add(txtOperacao);
				lista.Add(txtValor);
				lista.Add(txtSequencialUsr);
				lista.Add(txtSequencialVen);
				lista.Add(txtTipo);
				 return lista;
			}

		/// <summary>
		/// Retorna o Objeto que será o primeiro a ser incluso.
		/// Autor:Gerador NAT.
		/// </summary>
		/// <returns>System.Windows.Forms.Control</returns>
		public override System.Windows.Forms.Control getObjectFocus() 
		{ 
			return txtData;
		}

		/// <summary>
		/// Retorna o formuário de pesquisa Avançada
		/// Autor:Gerador NAT.
		/// </summary>
		/// <returns>FrPesquisaPai</returns>
		public override FrPesquisaPai<CaixaEntidade> getFrmPesquisa() 
		{ 
			 return null;
		}

		/// <summary> 
		/// Método que põe o formulário em estado de alteração
		/// Autor:Gerador NAT.
		/// </summary>
		/// <param name="sender">object</param>
		/// <param name="e">System.Windows.Forms.KeyEventArgs</param> 
		private void OnTxtCodigoKeyUp(object sender, System.Windows.Forms.KeyEventArgs e) 
		{
			 NovoRegistro = true;
			 HabilitarCampos(sender, new EventArgs());
		
		}
		}

 public class frmCaixaInter : FormPai<CaixaEntidade>{
 public frmCaixaInter() 
	{ }}
	}
